*,
::after,
::before {
  box-sizing: border-box;
}
body,
ul,
ol,
dl,
dd,
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  padding: 0;
  margin: 0;
}
body {
  font-family: -apple-system, BlinkMacSystemFont, PingFangSC-Regular, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #333;
}
img {
  vertical-align: bottom;
}
ul,
ol {
  list-style-type: none;
}
a {
  color: #333;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.index {
  width: 100%;
  min-height: 100vh;
  background-color: #f9fafb;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}
.search {
  margin-top: 16vw;
  width: 91.46666667vw;
  height: 8.53333333vw;
  background-color: #f2f4f5;
  border-radius: 4.26666667vw;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.search .txt {
  font-size: 3.73333333vw;
  color: #a1a4b3;
}
.search .icon-sousuo {
  font-size: 4.26666667vw;
}
.search span.txt {
  width: 34.13333333vw;
}
.banner {
  position: relative;
  margin: 2.66666667vw 0px;
  width: 100vw;
  height: 28.8vw;
  overflow: hidden;
}
.banner .bannerList {
  animation: slide 7s ease infinite;
  width: 400vw;
  display: flex;
}
.banner .bannerList li {
  width: 91.33333333vw;
  height: 28.8vw;
  margin: 0 auto;
}
.banner .bannerList li a,
.banner .bannerList li img {
  width: 100%;
  height: 100%;
}
.banner .bannerList li img {
  border-radius: 1.86666667vw;
  object-fit: cover;
}
@keyframes slide {
  0% {
    transform: translate(0vw);
  }
  33% {
    transform: translate(-100vw);
  }
  66% {
    transform: translate(-200vw);
  }
  100% {
    transform: translate(-300vw);
  }
}
.banner ol {
  position: absolute;
  left: 50%;
  bottom: 2.66666667vw;
  transform: translateX(-50%);
  display: flex;
}
.banner ol li {
  margin: 0 0.53333333vw;
  width: 1.33333333vw;
  height: 1.33333333vw;
  background-color: #fff;
  opacity: 0.4;
  border-radius: 0.66666667vw;
}
.banner ol li.active {
  opacity: 0.8;
}
.title {
  margin: auto;
  margin-bottom: 3.46666667vw;
  width: 91.6vw;
  height: 7.46666667vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.title h2 {
  color: #262338;
  font-size: 5.33333333vw;
}
.title .more {
  display: flex;
  align-items: center;
  color: #a1a4b3;
}
.title .more span {
  font-size: 3.2vw;
}
.title .more .icon-right {
  font-size: 4.26666667vw;
}
.content img {
  width: 28vw;
  height: 28vw;
  border-radius: 4.26666667vw;
}
.content .cover {
  position: relative;
}
.content .cover > img {
  width: 28vw;
  height: 28vw;
  border-radius: 4.26666667vw;
}
.content .cover .playInfo {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 7.6vw;
  background-color: rgba(0, 0, 0, 0.3);
  border-top-right-radius: 4.26666667vw;
  border-bottom-left-radius: 4.26666667vw;
}
.content .cover .playInfo img {
  margin-left: 3.46666667vw;
  width: 2.4vw;
  height: 3.2vw;
  border-radius: 0;
}
.content .cover .playInfo span {
  margin-left: 1.6vw;
  margin-right: 3.46666667vw;
  font-size: 3.46666667vw;
  color: #fff;
  font-weight: 700;
  line-height: normal;
}
.content p {
  margin-top: 2.66666667vw;
  width: 28vw;
  font-size: 3.73333333vw;
  color: #262338;
}
.rankList .content li {
  margin: 0px 4.13333333vw 4.13333333vw 4.26666667vw;
  width: 91.46666667vw;
  height: 28vw;
  background-color: #fff;
  border-radius: 4.26666667vw;
}
.rankList .content li a {
  width: 100%;
  height: 100%;
  display: flex;
}
.rankList .content li dl {
  margin-left: 5.6vw;
  padding: 3.6vw 0;
}
.rankList .content li dl dt {
  margin-bottom: 1.6vw;
  display: flex;
  align-items: center;
  font-size: 3.73333333vw;
  color: #262338;
}
.rankList .content li dl dd {
  margin-bottom: 0.93333333vw;
  font-size: 2.93333333vw;
  color: #a1a4b3;
}
.recommend {
  margin-top: 6.66666667vw;
}
.recommend .title {
  margin-bottom: 0;
}
.recommend .content ul {
  display: flex;
  width: 100vw;
  height: 92.26666667vw;
  justify-content: space-evenly;
  align-content: space-evenly;
  flex-wrap: wrap;
}
.recommBook {
  margin-top: 1.86666667vw;
}
.recommBook .content ul {
  display: flex;
  width: 100vw;
  height: 50.13333333vw;
  justify-content: space-evenly;
}
.recommBook .content a > span {
  font-size: 2.93333333vw;
  color: #a1a4b3;
}
.footer {
  margin-top: 10.66666667vw;
  margin-bottom: 28.66666667vw;
  width: 100vw;
  height: 23.2vw;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.footer .sign {
  display: flex;
  align-items: center;
}
.footer .sign img {
  width: 5.86666667vw;
  height: 6.26666667vw;
}
.footer .sign p {
  margin-left: 1.6vw;
  font-size: 3.73333333vw;
}
.footer .agreement,
.footer .version,
.footer .intro {
  display: flex;
  align-items: center;
  font-size: 2.93333333vw;
  color: #a1a4b3;
  line-height: 4.8vw;
}
.footer .agreement {
  margin-top: 2.53333333vw;
}
.top {
  position: fixed;
  left: 0;
  top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100vw;
  height: 13.33333333vw;
  background-color: #fff;
  box-shadow: 0px 4vw 3.6vw -5.06666667vw rgba(211, 220, 236, 0.77);
}
.top .imghead {
  width: 62.8vw;
  height: 100%;
  background: url(../assets/head.png) no-repeat left / contain;
}
.top .right {
  margin-right: 4vw;
  width: 23.33333333vw;
  height: 8vw;
  background-color: #ffe31b;
  border-radius: 4vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top .right span {
  font-size: 3.46666667vw;
  color: rgba(0, 0, 0, 0.8);
}
.top .right .icon-down {
  font-size: 3.06666667vw;
  margin-left: 1.33333333vw;
}
.bottom {
  padding-left: 4.8vw;
  padding-right: 2.4vw;
  position: fixed;
  bottom: 8vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 85.33333333vw;
  height: 12vw;
  border-radius: 6vw;
  background-color: #fff;
  box-shadow: 0.26666667vw 0 5.46666667vw 0.26666667vw rgba(232, 235, 241, 0.73);
}
.bottom .adv {
  display: flex;
  align-items: center;
}
.bottom .adv img {
  width: 9.86666667vw;
  height: 9.86666667vw;
}
.bottom .adv span {
  margin-left: 1.33333333vw;
  font-size: 3.73333333vw;
  font-weight: 700;
}
.bottom .moreIcon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 7.2vw;
  height: 7.2vw;
  border-radius: 3.6vw;
  background-color: #F7F7F7;
}
.bottom .moreIcon .icon-right {
  color: #333333;
  font-size: 4.26666667vw;
  font-weight: 700;
}
